Three-dimensional (3D) human-computer interaction system using computer mouse as a 3D pointing device and an operation method thereof

ABSTRACT

A three-dimensional user interface system includes at least one pointing/input device and an imaging device configured for capturing one or more image frames each providing at least two different views of a scene including the at least one pointing/input device. The imaging device is a multi-view imaging device which provides at least two different views of the scene per each of the one or more image frames captured. One or more software programs calculate from reference points in the image frames at least a spatial and a velocity parameter of the at least one pointing/input device when moved through a three-dimensional space and for rendering on a graphical user interface of a computing device a visual marker corresponding to the spatial and velocity parameters of the at least one pointing/input device in three-dimensional space. Methods for three-dimensional pointing and/or data input incorporating the described system are also provided.

This utility patent application claims the benefit of priority in U.S.Provisional Patent Application Ser. No. 61/830,168 filed on Jun. 3,2013, the entirety of the disclosure of which is incorporated herein byreference.

TECHNICAL FIELD

The present disclosure relates to two-dimensional (2D) andthree-dimensional (3D) computer user interface systems. Morespecifically, this disclosure pertains to 3D user interface systemsallowing switching between 2D and 3D modes. A 2D/3D human-computerinteraction system is provided using one or more pointing/input devicesto support 2D and 3D pointing and input.

BACKGROUND OF THE INVENTION

The operation of a conventional mechanical or optical pointing or inputdevice such as a mechanical or optical computer mouse is well known inthe art. By use of these devices, the user can select files, programs,or actions from lists, groups of icons, etc., and can “gesturally” movefiles, programs, etc. issue commands or map to specific actions, forexample in drawing programs.

As examples, a mechanical computer mouse relies on one or more wheelsand/or balls to track movement or displacement information relative toforward-backward and left-to-right movement of the computer mouse, forexample by interrupting infrared beams of light directed at lightsensors to create pulses representative of wheel or ball movement.Simple logic circuits interpret the relative timing of the pulses toindicate which direction the wheel(s) or ball(s) is moving, which isthen converted by driver software into motion of a visual indicator suchas a pointer, cursor, or cross-hair along X and Y axes of a computingdevice display screen.

An optical computer mouse replaces the mechanical mouse wheels or ballswith one or more light sources such as light-emitting diodes (LEDs) orlaser diodes to detect movement of the mouse relative to an underlyingsurface such as a mouse pad. The inertial/gyroscopic computer mouse usesa tuning fork or other accelerometer to detect rotary movement for everyaxis supported, most commonly using 2 degrees of rotational freedom andbeing insensitive to spatial translation. The user need only performsmall wrist rotations to move a pointer or cursor on a display screen.

Typically, the above conventional types of computer mice do not providethe option of three-dimensional (3D) pointing or input, but rathercontrol the motion of a pointer or cursor in a 2D graphical userinterface. However, three-dimensional pointing and input have long beenwanted features in human-computer interactions. Such 3D pointing/inputallows a user to accomplish tasks that are not possible with atwo-dimensional (2D) pointing device such as the conventional computermice discussed above. For example, a 3D pointing device allows the userto perform tasks such as 3D sculpturing or drawing, “flying” inmulti-dimensional space (for example, three-dimensional space defined byX, Y, and Z axes) such as during gaming, etc.

In order to accomplish 2D or 3D pointing, it is a requirement to be ableto identify the location of a pointing device with respect to areference point in 2D or 3D space. In the case of 2D pointing, this isrelatively simple. For instance, a conventional optical or mechanicalcomputer mouse can easily measure a distance traveled with respect to aprevious location in both X and Y directions in any moment and,consequently, can report its current location in real time and display acursor or other visible marker on a display screen of a computing deviceaccordingly.

Three-dimensional pointing/input is more complex. There are twoconventional ways to accomplish 3D pointing depending on whether thepointing device has a distance measuring component or not. If thepointing device has a distance measuring component, an imager such as anIR camera may be integrated into the pointing device to detect lightsfrom an IR emitter of a console such as the console of a gaming device,and calculate spatial coordinates for the pointing device accordingly.The Wii® Remote marketed by Nintendo® falls within that category. Aproblem with this approach is that the pointing device spatialcoordinates can only be calculated when its imager has a direct line ofsight to a sensor bar associated with the gaming device console.

If the pointing device does not include a distance measuring component,a separate component is required to measure the distance between thepointing device and, for example, a gaming device or base station, or toidentify the location of the pointing device with respect to the gamingdevice or base station. All gesture-based pointing device approaches,such the Kinect® device marketed by Microsoft®, belong to this lattercategory. In this case, the fingers or the hands of a user play the roleof a pointing device and a special imaging device is required toidentify the locations of the fingers or hands of the user.Three-dimensional mice such as 3Dconnexion/Logitech's® SpaceMouse® inthe early 1990s and Kantek's® 3D RingMouse® in the late 1990s, alsoknown as bats, flying mice or wands, also fall in this category. As anexample, the RingMouse® was tracked by a base station throughultrasound. This approach has been found to be unable to providesufficient resolution.

There have been prior art attempts to combine a pointing component andan imaging component into a single device. For example, a prior artcomputer mouse included a digital camera mounted into a housing of themouse (see FIG. 1). This device also included a mode selection systemallowing the device to transition between a 2D mouse function and adigital camera function. However, the prior art device cannot functionas a 3D pointer.

To the author's knowledge, no pointing devices exist wherein apointing/input device such as computer mouse configured for conventional2D pointing can also be configured as a 3D pointing device in a 3Dhuman-computer interaction system.

SUMMARY OF THE INVENTION

To solve the foregoing problems and address the identified need in theart, the present disclosure provides an input or pointing device whichcan be transitioned between conventional 2D pointing and 3D pointing.The pointing device uses a multi-view imaging device to support 3Dpointing on any type of graphical user interface such as a computingdevice 2D or 3D display screen. Systems and methods incorporating thesedevices are provided.

In one aspect, a three-dimensional user interface system is providedincluding at least one pointing/input device and an imaging device. Theimaging device is configured for capturing one or more image frames eachproviding at least two different views of a scene including the at leastone pointing/input device. The pointing/input device includes at leastone visible indicia providing at least one reference point for themulti-view imaging device and the software. The imaging device is amulti-view imaging device which provides at least two different views ofthe scene per each of the one or more image frames captured, such as adual lens video recording device or a single lens video recordingdevice.

One or more software programs are provided including executableinstructions for calculating from the one or more image frames at leasta spatial and a velocity parameter of the at least one pointing/inputdevice when moved through a three-dimensional space. The softwarelikewise renders on a graphical user interface of a computing device avisual marker such as a pointer, cursor, icon, etc. corresponding to thespatial and velocity parameters of the at least one pointing/inputdevice in three-dimensional space. The software derives this informationfrom a number of attribute parameters of the pointing/input device,using the visible indicia as reference points.

In another aspect, a method for three-dimensional pointing and/or datainput is provided. The method includes steps of moving the at least onepointing/input device in a three-dimensional space within a field ofview of the imaging device. The imaging device is operably connected toa computing device having at least one processor, at least one memory,and at least one graphical user interface. At least one image frameproviding at least two views of a scene including the at least onepointing/input device is captured using the imaging device, and used asdescribed above to calculate at least a spatial and a velocity parameterof the at least one pointing/input device when moved through thethree-dimensional space. Then a visual marker corresponding to thespatial and velocity parameters of the at least one pointing/inputdevice in three-dimensional space is rendered on a graphical userinterface.

These and other embodiments, aspects, advantages, and features of thepresent invention will be set forth in the description which follows,and in part will become apparent to those of ordinary skill in the artby reference to the following description of the invention andreferenced drawings or by practice of the invention. The aspects,advantages, and features of the invention are realized and attained bymeans of the instrumentalities, procedures, and combinationsparticularly pointed out in the appended claims. Unless otherwiseindicated, any patent and/or non-patent citations discussed herein arespecifically incorporated by reference in their entirety into thepresent disclosure.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings incorporated in and forming a part of thespecification, illustrate several aspects of the present invention, andtogether with the description serve to explain the principles of theinvention. In the drawings:

FIG. 1 shows a prior art computer mouse having an integrated digitalcamera;

FIG. 2 shows an embodiment of a 3D human-computer interaction systemusing a computer mouse pointing/input device and a multi-view imagingdevice;

FIG. 3 shows a bottom view of the computer mouse of FIG. 2;

FIG. 4 depicts a representative frame captured by the imaging device ofthe present disclosure, showing two different views of the pointingdevice;

FIG. 5 depicts a method for providing spatial and velocity parameters ofa pointing/input device from the frame of FIG. 4;

FIGS. 6a and 6b show a multi-view imaging device incorporated into ahousing of a pointing/input device according to the present disclosure,showing a cover lifted (FIG. 6a ) or lowered (FIG. 6b ) to respectivelyexpose or protect the imaging device;

FIG. 7 shows the integrated multi-view imaging device of FIGS. 6a and 6b, separated from the pointing device;

FIG. 8 shows a multi-view imaging device of the present disclosure,integrated into a user interface such as a keyboard of a desktopcomputer; and

FIG. 9 shows a multi-view imaging device of the present disclosure,integrated into a user interface such as a keyboard of a laptop ornotebook computer.

DETAILED DESCRIPTION OF THE INVENTION

In the following detailed description of the illustrated embodiments,reference is made to the accompanying drawings that form a part hereof,and in which is shown by way of illustration, specific embodiments inwhich the invention may be practiced. These embodiments are described insufficient detail to enable those skilled in the art to practice theinvention. Also, it is to be understood that other embodiments may beutilized and that process, reagent, materials, software, and/or otherchanges may be made without departing from the scope of the presentinvention.

The present disclosure relates to a 3D human-computer interaction system10 that supports 3D pointing and input in a graphical user interface 12of a computing device 14. The system comprises a multi-view imagingdevice 16, at least one pointing/input device 18 such as a computermouse, and one or more computer programs. The imaging device 16 and theat least one pointing/input device 18 are operably connected directly orindirectly to a computing device 14 by wired or wireless means, such asby universal serial bus (USB) cables or via wirelesstransmitters/receivers (see FIG. 2).

The pointing/input device 18 of the present disclosure is adapted forboth 2D and 3D pointing. When used as a standard 2D pointing/inputdevice, it is operated as a typical 2D optical or mechanical computermouse and performs all the typical operations expected of such, such asmoving a cursor around within a graphical user interface, making asingle left click, single right click, double left click, “dragging anddropping” an item, or scrolling a page up or down. The configuration andoperation of a 2D pointing/input device 18 to display movementinformation and as an input device is well known to the skilled artisan.

To use the computer mouse as a 3D pointing/input device, an operator Oactuates a 3D mode switch 20, in an embodiment shown disposed on a sideof a housing 22 of the pointing/input device 18 (see FIGS. 3 and 4). Thefunction of this switch is to turn off the 2D scanning function of thepointing/input device 18 and configure the pointing/input device 18 for3D scanning by the imaging device 16. Actuating the 3D mode switch 20activates visible indicia 24, shown in the example embodiment of FIGS. 3and 4 as light sources, specifically three LED lights 24 a, 24 b, 24 cdisposed on a bottom surface 26 of the pointing/input device 18 housing22 (see FIG. 3). It will be appreciated that LED lights are only onenon-limiting example of potential structures serving as visible indicia24, and that other suitable indicia are contemplated for use. Thepurpose of the visible indicia 24 will be further described below. Ofcourse, it will be appreciated that a switch 20 is only one embodimentof an actuator for activating visible indicia 24. For example, it iscontemplated to provide a pointing/input device 18 which automaticallydisables the 2D scanning function of the pointing/input device 18 andactivates visible indicia 24 when the pointing/input device 18 is liftedand/or tilted by the operator O to position the visible indicia 24within a field of view of the imaging device 16.

The operator O then holds the pointing/input device 18 in his/her hand,with the visible indicia 24 positioned within a field of view of theimaging device 16 (see FIG. 2), to perform 3D pointing/input in a 3Dspace. The operator O can move the pointing/input device 18 in anydesired direction (with the caveat that the visible indicia 24 mustremain within the horizontal and vertical fields of view of the imagingdevice 16), click the left or the right buttons 26, 28 (see FIG. 6) atany time, or scroll the middle button or wheel 30 (see FIG. 6) at anytime.

All the pointing/input operations expected of a pointing/input device 18in 2D mode (pointing, clicking, scrolling, “drag and drop,” etc.) arestill supported, but with room for many more possible 3D operationssince the system 10 provides spatial and velocity attribute parametersto the computing device 14 and software for each image frame captured bythe imaging device 16. Eighteen parameters are computed by the computingdevice 14 and grouped into six geometric/motion attributes (a current 3Dlocation or position of the pointing/input device 18 in a captured imageframe, a normal vector, a tangent vector, a bi-normal vector, a motionvelocity, and a motion acceleration of the pointing/input device 18)each having three coordinate components (x-, y-, and z-coordinates).

The operator O may be undertaking operations with the pointing/inputdevice 18 that do not require 3D applications, such as 3D rotation,flip, etc., but may still prefer to use the present system. For example,the user may not have a suitable surface available for conventionaloptical mouse pointing/input, such as when seated in a crowded vehicle.In this situation, the skilled artisan will appreciate that the visibleindicia 24 may be provided by fewer than three LED lights as describedabove, and that 2D pointing/input are possible without requiring a flatsurface over which to translate the pointing/input device 18.

The operator O can also use multiple pointing/input devices 18 in the 3Dmode, for example holding a pointing/input device 18 in each hand. Inthis case, information on current location, normal vector, tangentvector, motion velocity and motion acceleration of both pointing/inputdevices 18 will be provided by the system 10, but typically a locationof a visible marker such as a cursor or pointer icon (not shown)displayed on a graphical user interface 12 such as a display screen of acomputing device 14 can be controlled by only one pointing/input device18 at any time and only one pointing/input device 18 can be clicked orscrolled at any time.

The imaging device 16 is typically a multi-view imaging device, such asa dual-lens imager or a single-lens multi-view digital video recorderoperatively coupled to an image sensor which encodes images for laterdecoding by the computing device 14. Any suitable video recorders whichare or can be adapted for use with computing devices are contemplated,such as web cams. A number of suitable image sensors are known in theart, including without limitation conventional charge-coupled device(CCD) or complementary metal oxide semiconductor (CMOS) technology. Therequirement is that at least two different views of a scene includingthe pointing/input device 18 are rendered for each frame captured by theimaging device 16. In an embodiment, the imaging device captures atleast three such frames per second. In another embodiment, the imagingdevice captures fifteen frames per second.

FIG. 4 illustrates a captured image frame 32 providing two views, a leftview 34 and a right view 36 of the pointing/input device 18. When thepointing/input device 18 is not placed in 3D mode, the imaging device 16can be used as a 2D or 3D webcam for the computing device 14, dependingon the display screen type of the computing device 14. If the displayscreen 12 allows only 2D displays, the imaging device 16 functions as a2D webcam by rendering only the left view 34 of each frame 32. If thedisplay screen 12 allows 3D displays, the imaging device 16 functions asa 3D webcam, allowing rendering an interlaced image of at least portionsof the left view 34 and the right view 36 of each frame 32. However, itwill be appreciated that the 3D pointing/input mode of the presentsystem 10 functions in both display screen types.

A variety of multi-view imaging systems are known in the art andcontemplated for use herein, such as the devices and systems disclosedin U.S. Published Patent Appl. No. 2010/0289874, U.S. Published PatentAppl. No. 2011/0310230, and U.S. patent application Ser. No. 13/921,739,the disclosures of each of which are incorporated in their entiretyherein by reference, which provide multi-view images to a single-lensrecording device for further processing. Likewise, a number of methodsfor rendering three-dimensional images by interlacing information frommultiple two-dimensional views of a same scene are known, such as themethods disclosed in the above references.

FIG. 5 depicts a high level flow chart of a process for 3D pointing orinput. When the 3D mode switch 20 of the pointing/input device 18 isactuated (step 502) to allow pointing and information input in 3D mode,the system 10 software stops rendering the frames 32 captured by theimaging device 16, and starts computing attribute parameters of thepointing/input 18 now being moved by the operator O in 3D parameters.With two different views of the pointing/input device 18 provided ineach captured frame 32 (step 504), the system 10 software can compute 3Dlocations (step 506) of the visible indicia 24 (in the depictedembodiments, the three extra LED lights 24 a, 24 b, 24 c at the bottomsurface 26 of the pointing/input device 18 housing 22) as they movethrough three-dimensional space, and also a normal vector (step 508) anda tangent vector (step 510) of a plane that passes through the visibleindicia 24 as they move through three-dimensional space.

A motion velocity of the pointing/input device 18 can likewise becalculated (step 512) using a position of the visible indicia 24 from afirst frame 32 and one or more subsequent frames 32 b, 32 c, . . . , 32x captured by the imaging device 16, and in turn a motion accelerationof the pointing/input device 18 can be calculated (step 514) using acurrent calculated motion velocity and a previous calculated motionvelocity. This type of calculation is known to the skilled artisan inthis field, such as those disclosed in U.S. Published Patent Appl. No.2010/0289874, U.S. Published Patent Appl. No. 2011/0310230, and U.S.patent application Ser. No. 13/921,739. A specific, non-limiting exampleof a typical calculation of these parameters is provided below. Thisinformation can then be used to render (step 516; see also the examplecalculations set forth below) a position and movement in athree-dimensional display of a marker corresponding precisely to themovements of the pointing/input device 18 in three-dimensional space. Asis known, representative visible markers can be cursors, pointers,cross-hairs, icons, etc.

In more detail, in an embodiment, by identifying locations of LED light24 a in the left view 34 and the right view 36 of a captured image frame32 (see FIG. 4), the system 10 can use a standard triangulation methodto find a 3D location of the LED light 24 a with respect to the imagingdevice 16. The location of the visible marker (not shown) on thegraphical user interface 12 is then determined by the 3D location of theextra LED light 24 a. This process is repeated in sequential capturedframes 32 b, 32 c, etc. to render a visible marker correspondingprecisely to the positions of the pointing/input device 18 as theoperator O moves the device through along X, Y, and Z axes ofthree-dimensional space.

In the following we show the calculation process of the eighteenattribute parameters referenced above. Let the world coordinates of theLED lights A, B, and C (see FIG. 3) be (A_(x), A_(y), A_(z)), (B_(x),B_(y), B_(z)), and (C_(x), C_(y), C_(z)), respectively. Once the worldcoordinates of these points are available or computed using a standardtriangulation method as is disclosed in U.S. Published Patent Appl. No.2010/0289874, U.S. Published Patent Appl. No. 2011/0310230, or U.S.patent application Ser. No. 13/921,739, eighteen attribute parameterscan be computed and grouped into six attributes (so that each attributecontains three parameters) as follows. These attributes include currentlocation (D), tangent vector ({right arrow over (t)}), normal vector({right arrow over (n)}), bi-normal vector ({right arrow over (b)}),velocity vector ({right arrow over (v)}), and acceleration vector({right arrow over (a)}).

First, choose an arbitrary LED light among the above three, for exampleLED light A (see FIG. 4), as a reference point. Then the attribute“current location” is defined as the location of A, (A_(x), A_(y),A_(z)). The other attributes are defined as follows.

${\overset{arrow}{t} = \langle {{B_{x} - A_{x}},{B_{y} - A_{y}},{B_{z} - A_{z}}} \rangle};$${\overset{arrow}{n} = {{\overset{arrow}{AB} \times \overset{arrow}{AC}} = {\begin{matrix}\overset{arrow}{i} & \overset{arrow}{j} & \overset{arrow}{k} \\{B_{x} - A_{x}} & {B_{y} - A_{y}} & {B_{z} - A_{z}} \\{C_{x} - A_{x}} & {C_{y} - A_{y}} & {C_{z} - A_{z}}\end{matrix}}}};$${\overset{arrow}{b} = {{\overset{arrow}{n} \times \overset{arrow}{t}} = {\begin{matrix}\overset{arrow}{i} & \overset{arrow}{j} & \overset{arrow}{k} \\n_{x} & n_{y} & n_{z} \\t_{x} & t_{y} & t_{z}\end{matrix}}}},$

where m_(x), m_(y) and m_(z) represent the x-, y- and z-component of thevector {right arrow over (m)}, respectively;

{right arrow over (v)}=D−D^(pre), where D^(pre) is the location of A inthe previous frame;

{right arrow over (a)}={right arrow over (v)}−{right arrow over(v)}^(pre), where {right arrow over (v)}^(pre) is the representation ofthe vector {right arrow over (v)} in the previous frame.

In the above formula, the symbol “x” is the cross product operator, and“|M|” is the determinant of the 3×3 matrix M whose value is computed asfollows:

${\begin{matrix}\overset{arrow}{i} & \overset{arrow}{j} & \overset{arrow}{k} \\u & v & w \\p & q & r\end{matrix}} = \langle {{{vr} - {wq}},{{wp} - {ur}},{{uq} - {vp}}} \rangle$

The imaging device 16 typically must be calibrated and rectified toensure sufficient precision of the above calculations. Thecalibration/rectification process for a single-lens multi-view videorecording device is different from the calibration/rectification processfor a dual-lens video recording device. Exemplary calibration andrectification procedures and calculations are known to the skilledartisan, for example as set forth in U.S. Published Patent Appl. No.2010/0289874.

In one exemplary embodiment, the imaging device 16 is installed as anattachment to the pointing/input device 18 to improve mobility,portability, and convenience of the system 10 (see FIG. 6). Detachingthe imaging device 16 from the pointing/input device 18 (see FIG. 7) andconnecting the imaging device 16 directly or indirectly to a computingdevice 14 provides a multi-view video recording device for the system 10(see FIG. 2).

In another embodiment, the imaging device 16 is installed as a componentof or a peripheral to a keyboard 38 of a computing device such as adesktop computer (see FIG. 8). In yet another embodiment, the imagingdevice 16 is installed as a component of or a peripheral to a laptop ora notebook computer 15 (see FIG. 9). Of course, the skilled artisan willappreciate that the system 10 can be integrated into or provided as aperipheral for any computing device 14, including without limitationdesktop or portable computers, tablet computers, smartphones, personaldigital assistants (PDAs), Web-enabled or so-called “smart” televisions,etc.

Summarizing, the present disclosure provides a 3D pointing/input systemincluding an input or pointing device which can conveniently betransitioned between use in conventional 2D pointing/input and 3Dpointing/input, i.e. between 2D and 3D mode. The system uses amulti-view imaging device which renders 3D images of the pointing/inputdevice spatial and velocity parameters from multi-view 2D images. Thus,the system of the present disclosure supports 3D pointing/input on anytype of graphical user interface, without requiring a specialized 3Duser interface. However, the system can be used with any suitablegraphical user interface such as a computing device 2D or 3D displayscreen.

One of ordinary skill in the art will recognize that additionalembodiments of the invention are also possible without departing fromthe teachings herein. Thus, the foregoing description is presented forpurposes of illustration and description of the various aspects of theinvention, and one of ordinary skill in the art will recognize thatadditional embodiments of the invention are possible without departingfrom the teachings herein. This detailed description, and particularlythe specific details of the exemplary embodiments, is given primarilyfor clarity of understanding, and no unnecessary limitations are to beimported, for modifications will become obvious to those skilled in theart upon reading this disclosure and may be made without departing fromthe spirit or scope of the invention. Relatively apparent modifications,of course, include combining the various features of one or more figureswith the features of one or more of other figures. All suchmodifications and variations are within the scope of the invention asdetermined by the appended claims when interpreted in accordance withthe breadth to which they are fairly, legally and equitably entitled.

What is claimed is:
 1. A three-dimensional user interface system,comprising: at least one pointing/input device including a plurality ofvisible indicia on a surface thereof; a multi-view imaging deviceconfigured for capturing a plurality of sequential image frames, each ofthe captured image frames providing at least two different views of ascene comprising the at least one pointing/input device; and at leastone computer program product operable on a computing device having atleast one processor, at least one memory, and at least one graphicaluser interface; wherein the at least one computer program productincludes executable instructions for calculating from the plurality ofsequential image frames at least a spatial and a velocity parameter ofthe at least one pointing/input device when moved through athree-dimensional space, and for rendering, on the graphical userinterface, a visual marker corresponding to the spatial and velocityparameters of the at least one pointing/input device inthree-dimensional space.
 2. The system of claim 1, wherein the pluralityof visible indicia provide at least one reference point for themulti-view imaging device.
 3. The system of claim 1, wherein theplurality of visible indicia are actuable.
 4. The system of claim 3,wherein the plurality of visible indicia comprises at least threeseparate light sources.
 5. The system of claim 1, wherein the multi-viewimaging device provides at least two different views of the scene pereach of the image frames captured.
 6. The system of claim 3, wherein theplurality of visible indicia comprises at least three separate lightsources.
 7. The system of claim 1, wherein the multi-view imaging deviceprovides at least two different views of the scene per each of the imageframes captured.
 8. The system of claim 7, wherein the multi-viewimaging device is configured to capture at least three image frames persecond.
 9. The system of claim 7, wherein the multi-view imaging deviceis a dual lens video recording device operably linked to an image sensorfor converting the captured image frames into digital data.
 10. Thesystem of claim 7, wherein the multi-view imaging device is a singlelens video recording device operably linked to a reflector for providingthe at least two different views of the scene per each of the imageframes captured and an image sensor for converting the captured imageframes into digital data.
 11. The system of claim 7, wherein thecomputer program product calculates at least a position and a velocityin three-dimensional space of the at least one pointing/input devicefrom the image frames captured by the multi-view imaging device.
 12. Thesystem of claim 11, wherein the computer program product includesexecutable instructions to provide a spatial and velocity parameter ofthe at least one pointing/input device from the plurality of sequentialimage frames captured by the multi-view imaging device by at least:determining a position in the plurality of sequential image frames ofthe at least one visible indicia when moved through thethree-dimensional space; calculating a normal vector, a bi-normalvector, and a tangent vector of a plane passing through the at least onevisible indicia when moved through the three-dimensional space; andcalculating a motion velocity and an acceleration velocity of the atleast one visible indicia when moved through the three-dimensionalspace.
 13. In a computing system environment, a method forthree-dimensional pointing and/or data input, comprising: moving atleast one pointing/input device in a three-dimensional space within afield of view of a multi-view imaging device operably connected to acomputing device having at least one processor, at least one memory, andat least one graphical user interface; by the multi-view imaging device,capturing a plurality of sequential image frames with each image frameproviding at least two views of a scene including the at least onepointing/input device; from the captured image frames, calculating atleast a spatial and a velocity parameter of the at least onepointing/input device when moved through the three-dimensional space;and rendering, on the graphical user interface, a visual markercorresponding to the spatial and velocity parameters of the at least onepointing/input device in three-dimensional space; wherein the at leastone pointing device includes a plurality of visible indicia on a surfacethereof.
 14. The method of claim 13, including providing at least onecomputer program product comprising executable instructions operable onat least one computing device having at least one processor and at leastone memory, for calculating from the captured image frames at least thespatial and the velocity parameters of the at least one pointing/inputdevice when moved through a three-dimensional space.
 15. The method ofclaim 13, including providing a plurality of actuable visible indicia onthe surface of the at least one pointing/input device.
 16. The method ofclaim 15, wherein the at least one computer program product determines aposition in the at least one captured image frame of the plurality ofvisible indicia when moved through the three-dimensional space,calculates a normal vector, a bi-normal vector, and a tangent vector ofa plane passing through the plurality of visible indicia when movedthrough the three-dimensional space, and calculates a motion velocityand an acceleration velocity of the plurality of visible indicia whenmoved through the three-dimensional space.
 17. The method of claim 13,including providing a multi-view imaging device configured to capture atleast three image frames per second.
 18. The method of claim 16, furtherincluding steps of rectifying and calibrating the multi-view imagingdevice.
 19. The method of claim 13, including providing a multi-viewimaging device configured to capture at least fifteen image frames persecond.
 20. The method of claim 13, including providing a multi-viewimaging device comprising a dual lens video recording device operablylinked to an image sensor for converting the captured image frames intodigital data.
 21. The method of claim 13, including providing amulti-view imaging device comprising a single lens video recordingdevice operably linked to a reflector for providing the at least twodifferent views of the scene per each of the image frames captured andan image sensor for converting the captured image frames into digitaldata.
 22. A three-dimensional user interface system, comprising: atleast one pointing/input device including a plurality of actuablevisible indicia on a surface thereof; a multi-view imaging deviceconfigured for capturing a plurality of sequential image frames, themulti-view imaging device comprising a single lens video recordingdevice operably linked to a reflector for providing at least twodifferent views of a scene comprising the at least one pointing/inputdevice per each image frame captured and an image sensor for convertingthe captured image frames into digital data; and at least one computerprogram product operable on a computing device having at least oneprocessor, at least one memory, and at least one graphical userinterface; wherein the at least one computer program product includesexecutable instructions for calculating from the plurality of capturedsequential image frames at least a spatial and a velocity parameter ofthe at least one pointing/input device when moved through athree-dimensional space, and for rendering, on the graphical userinterface, a visual marker corresponding to the spatial and velocityparameters of the at least one pointing/input device inthree-dimensional space; further wherein the plurality of visibleindicia provide a reference point for the multi-view imaging device.